\begin{center}
\begin{tikzpicture}[thick,scale=0.85, every node/.style={scale=0.85}]
	\tikzstyle{every path}=[thick]
	\tikzstyle{node1}=[draw,rectangle,minimum height=1cm, minimum width=2.5cm, text width=2.5cm, fill=gray!20]

	\node [node1] (n1next) {Next};
	\node [node1] (n1prev) [below of=n1next] {Prev};
	\node [node1] (n1x) [below of=n1prev] {X=\RU{1-й элемент}\EN{1st element}};
	\node [node1] (n1y) [below of=n1x] {Y=\RU{1-й элемент}\EN{1st element}};

	\node [node1] (n2next) [right=0.5cm of n1next] {Next};
	\node [node1] (n2prev) [below of=n2next] {Prev};
	\node [node1] (n2x) [below of=n2prev] {X=\RU{2-й элемент}\EN{2nd element}};
	\node [node1] (n2y) [below of=n2x] {Y=\RU{2-й элемент}\EN{2nd element}};
	
	\node [node1] (n3next) [right=0.5cm of n2next] {Next};
	\node [node1] (n3prev) [below of=n3next] {Prev};
	\node [node1] (n3x) [below of=n3prev] {X=\RU{3-й элемент}\EN{3rd element}};
	\node [node1] (n3y) [below of=n3x] {Y=\RU{3-й элемент}\EN{3rd element}};
	
	\node [node1] (n4next) [right=0.5cm of n3next] {Next};
	\node [node1] (n4prev) [below of=n4next] {Prev};
	\node [node1] (n4x) [below of=n4prev] {X=\garbage{}};
	\node [node1] (n4y) [below of=n4x] {Y=\garbage{}};
	
	\node [node1] (variable) [above=3cm of n1next] {\RU{Переменная}\EN{Variable} std::list};
	
	\node [node1] (itbegin) [above=2cm of n1next] {list.begin()};
	\draw [->] (itbegin.south) -- (n1next.north);
	
	\draw [->] (variable.south) -- (itbegin.north);

	\node [node1] (itend) [above=2cm of n4next] {list.end()};
	\draw [->] (itend.south) -- (n4next.north);
	
	\node (ia1) [inner sep=0pt, above left=0.5cm and 0.5cm of n1next] {};
	\node (ia2) [inner sep=0pt, left=0.5cm of n1next] {};
	\node (ib1) [inner sep=0pt, above right=0.5cm and 0.5cm of n4next] {};
	\node (ib2) [inner sep=0pt, right=0.5cm of n4next] {};
	
	\node (oa1) [inner sep=0pt, above left=1cm and 1cm of n1next] {};
	\node (oa2) [inner sep=0pt, left=1cm of n1prev] {};
	\node (ob1) [inner sep=0pt, above right=1cm and 1cm of n4next] {};
	\node (ob2) [inner sep=0pt, right=1cm of n4prev] {};

	\draw [->] (n1next.east) -- (n2next.west);
	\draw [->] (n2next.east) -- (n3next.west);
	\draw [->] (n3next.east) -- (n4next.west);

	\draw [<-] (n1prev.east) -- (n2prev.west);
	\draw [<-] (n2prev.east) -- (n3prev.west);
	\draw [<-] (n3prev.east) -- (n4prev.west);
	
	\draw [->] (n4next.east) -- (ib2) -- (ib1) -- (ia1) -- (ia2) -- (n1next.west);
	\draw [->] (n1prev.west) -- (oa2) -- (oa1) -- (ob1) -- (ob2) -- (n4prev.east);
\end{tikzpicture}
\end{center}
